﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Windows.Forms;
using qlHieuThuocDongY.DataAccess;
using qlHieuThuocDongY.BusinessObject;
namespace qlHieuThuocDongY.BusinessLogic
{
    class ThuocNhapBUS
    {
        ConnectData connData = new ConnectData();
        // Lấy danh sách Thuốc Nhập
        public DataTable LayDanhSachThuocNhap()
        {
            string sql = "SELECT MaHDNhap, MaThuoc, SoLuong, NgayNhap, MaNCC FROM NhapThuoc";
            return connData.GetDataTable(sql);
        }

        // Thêm
        public bool ThemNhapThuoc(NhapThuoc nhapthuoc)
        {
            if (KiemTraTruocKhiLuu(nhapthuoc))
            {
                string sql = string.Format("INSERT INTO NhapThuoc(MaHDNhap, MaThuoc, SoLuong, NgayNhap, MaNCC) "
                    + "VALUES ('{0}','{1}',{2},'{3}','{4}')", nhapthuoc.MaHDNhap, nhapthuoc.MaThuoc, nhapthuoc.SoLuong, nhapthuoc.NgayNhap.ToString("dd/MM/yyyy"), nhapthuoc.MaNCC);
                if (connData.ExcuteQuery(sql))
                {
                    MessageBox.Show("Thêm Bệnh Nhân Thành Công", "Thông Tin", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return true;
                }
            }
            return false;
        }

        public bool CheckExists(string mahoadonnhap)
        {
            if (connData.CheckExistValue("NhapThuoc", "MaHDNhap", mahoadonnhap))
                return true;
            return false;

        }

        // Sửa

        public bool SuaThuocNhap(NhapThuoc nhapthuoc)
        {
            if (KiemTraTruocKhiLuu(nhapthuoc))
            {
                string sql = string.Format("UPDATE NhapThuoc SET MaThuoc = '{0}', SoLuong = {1}, "
                + "NgayNhap = '{2}', MaNCC = '{3}' WHERE MaHDNhap = '{4}' ",
                    nhapthuoc.MaThuoc, nhapthuoc.SoLuong, nhapthuoc.NgayNhap.ToString("dd/MM/yyyy"), nhapthuoc.MaNCC,nhapthuoc.MaHDNhap);
                if (connData.ExcuteQuery(sql))
                {
                    MessageBox.Show("Sửa Thành Công", "Thông Tin", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return true;
                }
            }
            return false;
        }

        // Xóa

        public bool XoaNhapThuoc(string mahoadonnhap)
        {
            string sql = "DELETE FROM NhapThuoc WHERE MaHDNhap in ('" + mahoadonnhap + "')";
            if (connData.ExcuteQuery(sql))
            {
                MessageBox.Show("Xóa Thành Công!", "Thông Tin", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return true;

            }
            return false;
        }
        // Kiểm tra trước khi Save
        public bool KiemTraTruocKhiLuu(NhapThuoc nhapthuoc)
        {
            if (nhapthuoc.SoLuong.Equals(""))
            {
                MessageBox.Show("Số Lượng Không Hợp Lệ");
                return false;
            }

            return true;
        }

        // Hàm tìm mã bệnh nhân kế tiếp
        public string NextID()
        {
            return Utilities.NextID(connData.GetLasID("NhapThuoc", "MaHDNhap"), "HDN");
        }
    }
}
